package cn.huiyunche.base.service.interfaces;

import cn.huiyunche.base.service.model.SServiceOrderVehicle;
import cn.huiyunche.base.service.vo.SOrderDetailVo;
import cn.huiyunche.base.service.vo.SServiceOrderVehicleVo;

import java.util.List;

public interface SServiceOrderVehicleService {

    /**
     * @param orderVehicle
     * @return
     * @Title: add
     * @Description: 添加服务订单车辆信息
     * @return: long
     */
    long add(SServiceOrderVehicle orderVehicle);

    /**
     * 根据服务订单ID 查询vehicleID
     *
     * @param sorderId
     * @return
     */
    SServiceOrderVehicle selectByServiceOrderId(String serviceOrderId);

    /**
     * @param customerOrderId 客户订单id
     * @param dispatchTimes   调度次数
     * @param status          服务订单状态
     * @Title: getListByCOrderId
     * @Description: 根据客户订单id查询服务订单的车辆信息
     * @return: List<SOrderDetailVo>
     */
    List<SOrderDetailVo> getListByCOrderId(long customerOrderId, Integer dispatchTimes, List<Integer> status);

    /**
     * @param serviceOrderIds 服务订单主键
     * @Title: getListBySOrderIds
     * @Description: 根据服务订单主键查询服务订单车辆信息
     * @return: List<SServiceOrderVehicleVo>
     */
    List<SServiceOrderVehicleVo> getListBySOrderIds(List<Long> serviceOrderIds);

    /**
     * Delete int.
     *
     * @param serviceOrderId the id
     * @return the int
     */
    int delete(Long serviceOrderId);
}
